package com.lantosec.hmrp.modules.eval.service;

import com.lantosec.hmrp.core.kit.PageVO;
import com.lantosec.hmrp.core.kit.tree.TreeNodeVo;
import com.lantosec.hmrp.modules.eval.entity.EvalScheme;
import com.baomidou.mybatisplus.extension.service.IService;
import com.lantosec.hmrp.modules.eval.entity.EvalSchemeList;
import com.lantosec.hmrp.modules.eval.entity.EvalType;
import com.lantosec.hmrp.modules.eval.vo.EvalItemVO;
import com.lantosec.hmrp.modules.eval.vo.EvalSchemeVO;
import com.lantosec.hmrp.modules.eval.vo.EvalTypeVO;

import java.util.List;

/**
 * <p>
 * 考评方案 服务类
 * </p>
 *
 * @author AutoCode
 * @since 2020-03-16
 */
public interface IEvalSchemeService extends IService<EvalScheme> {
    /**
     * 查询考评方案详情
     * @return
     */
    public List<EvalItemVO> getEvalSchemeParm(Integer evalSchemeId);

    /**
     *新增考评方案
     * @param evalSchemeList
     * @return
     */
    public Integer saveEvalScheme(EvalSchemeList evalSchemeList);

    /**
     * 修改考评方案
     * @param evalSchemeList
     */
    public void updateEvalScheme(EvalSchemeList evalSchemeList);

    /**
     * 编辑时查考评方案信息
     * @param evalSchemeId
     * @return
     */
    public EvalSchemeList getEvalSchemeAll(Integer evalSchemeId);

    /**
     * 查询所有的考评方案
     * @return
     */
    List<EvalSchemeVO> getEvalScheme();

    PageVO<EvalSchemeVO> pageAll(PageVO<EvalScheme> page);

    /**
     * 查询部门人员树
     * @return
     */
    List<TreeNodeVo> getDeptUserTree();

    /**
     * 查询部门人员树（只针对于新增考评项目类型是deptid+userid）
     * @return
     */
    List<TreeNodeVo> deptUserTree();

    /**
     * 查询部门岗位树
     * @return
     */
    List<TreeNodeVo> getDeptPositionTree();
}
